package cn.zyx.pet.service;

import cn.zyx.basic.service.IBaseService;
import cn.zyx.basic.util.PageList;
import cn.zyx.pet.domain.Pet;
import cn.zyx.pet.domain.SearchMasterMsg;
import cn.zyx.pet.query.SearchMasterMsgQuery;

public interface ISearchMasterMsgService extends IBaseService<SearchMasterMsg> {

    /**
     * 发布寻主消息
     * @param searchMasterMsg
     */
    void publish(SearchMasterMsg searchMasterMsg,long loginInfoId);

    /**
     * 待处理消息查询接口
     * @param searchMasterMsgQuery
     * @param loginInfoId
     * @return
     */
    PageList<SearchMasterMsg> pending(SearchMasterMsgQuery searchMasterMsgQuery, Long loginInfoId);

    /**
     * 已处理消息接口
     * @param searchMasterMsgQuery
     * @param loginInfoId
     * @return
     */
    PageList<SearchMasterMsg> processed(SearchMasterMsgQuery searchMasterMsgQuery, Long loginInfoId);

    /**
     * 前端用户查询自己消息的接口
     * @param searchMasterMsgQuery
     * @param loginInfoId
     * @return
     */
    PageList<SearchMasterMsg> queryUser(SearchMasterMsgQuery searchMasterMsgQuery, Long loginInfoId);

    /**
     * 处理消息
     * @param pet
     */
    void handle(Pet pet,Long loginInfoId);
}
